/*
 * text.h
 *
 *  Created on: 16/03/2011
 *      Author: joaogf
 */

#ifndef TEXT_H_
#define TEXT_H_
#include "SDL/SDL.h"
#include "SDL/SDL_image.h"
#include "SDL/SDL_ttf.h"
#include "structs.h"
#include <string>
using namespace std;

class Text {
private:
		/*Superfície  do texto */
        SDL_Surface *msg_;
        /*Fonte do texto*/
        TTF_Font *font_;
        /*Cor do texto*/
        SDL_Color textColor_;
        /*String do texto*/
        string msgText_;
        /*Posição do texto na tela*/
        Point2d pos_;

public:
        Text(const string &tex,const string &fontName,const SDL_Color &cor);
        Text(const string &tex,const string &fontName, const Uint8 &r,const Uint8 &g,const Uint8 &b, const int &size);

        /*Métodos de acesso*/
        SDL_Surface* getTextScreen() const;
        const int &width() const;
        const int &height() const;
        const Point2d &getPos()const;
        /*Métodos de alterações de atributos*/
        void changeColor(const Uint8 &r,const Uint8 &g, const Uint8 &b);
        void changeColor(const ColorsRGB &cor);
        void setPos(const Point2d &pos);
        virtual ~Text();
};

#endif /* TEXT_H_ */
